package com.netposa.datawarehouse.aggregator.config;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

@Component
@ConfigurationProperties(
   prefix = "netposa.aggregator"
)
public class AggregatorProperties {
   private Integer parallelismGroupSize = 50;
   private Integer scoreAccuracy = 0;
   private String scoreRoundingMode = "UP";
   private Long vehicleTimeLength = 86400000L;
   private int StructureTypeSwitch = 15;
   private Integer showBigDataImgResultNum = 1000;
   private String portraitHttpRequestUrlPrefix = "http://34.54.72.43:8080";
   private String portraitPictureUrlPrefix = "http://34.54.72.43/bimg_upload/bimg";

   public Integer getParallelismGroupSize() {
      return this.parallelismGroupSize;
   }

   public Integer getScoreAccuracy() {
      return this.scoreAccuracy;
   }

   public String getScoreRoundingMode() {
      return this.scoreRoundingMode;
   }

   public Long getVehicleTimeLength() {
      return this.vehicleTimeLength;
   }

   public int getStructureTypeSwitch() {
      return this.StructureTypeSwitch;
   }

   public Integer getShowBigDataImgResultNum() {
      return this.showBigDataImgResultNum;
   }

   public String getPortraitHttpRequestUrlPrefix() {
      return this.portraitHttpRequestUrlPrefix;
   }

   public String getPortraitPictureUrlPrefix() {
      return this.portraitPictureUrlPrefix;
   }

   public void setParallelismGroupSize(Integer parallelismGroupSize) {
      this.parallelismGroupSize = parallelismGroupSize;
   }

   public void setScoreAccuracy(Integer scoreAccuracy) {
      this.scoreAccuracy = scoreAccuracy;
   }

   public void setScoreRoundingMode(String scoreRoundingMode) {
      this.scoreRoundingMode = scoreRoundingMode;
   }

   public void setVehicleTimeLength(Long vehicleTimeLength) {
      this.vehicleTimeLength = vehicleTimeLength;
   }

   public void setStructureTypeSwitch(int StructureTypeSwitch) {
      this.StructureTypeSwitch = StructureTypeSwitch;
   }

   public void setShowBigDataImgResultNum(Integer showBigDataImgResultNum) {
      this.showBigDataImgResultNum = showBigDataImgResultNum;
   }

   public void setPortraitHttpRequestUrlPrefix(String portraitHttpRequestUrlPrefix) {
      this.portraitHttpRequestUrlPrefix = portraitHttpRequestUrlPrefix;
   }

   public void setPortraitPictureUrlPrefix(String portraitPictureUrlPrefix) {
      this.portraitPictureUrlPrefix = portraitPictureUrlPrefix;
   }

   public boolean equals(Object o) {
      if (o == this) {
         return true;
      } else if (!(o instanceof AggregatorProperties)) {
         return false;
      } else {
         AggregatorProperties other = (AggregatorProperties)o;
         if (!other.canEqual(this)) {
            return false;
         } else {
            Object this$parallelismGroupSize = this.getParallelismGroupSize();
            Object other$parallelismGroupSize = other.getParallelismGroupSize();
            if (this$parallelismGroupSize == null) {
               if (other$parallelismGroupSize != null) {
                  return false;
               }
            } else if (!this$parallelismGroupSize.equals(other$parallelismGroupSize)) {
               return false;
            }

            Object this$scoreAccuracy = this.getScoreAccuracy();
            Object other$scoreAccuracy = other.getScoreAccuracy();
            if (this$scoreAccuracy == null) {
               if (other$scoreAccuracy != null) {
                  return false;
               }
            } else if (!this$scoreAccuracy.equals(other$scoreAccuracy)) {
               return false;
            }

            Object this$scoreRoundingMode = this.getScoreRoundingMode();
            Object other$scoreRoundingMode = other.getScoreRoundingMode();
            if (this$scoreRoundingMode == null) {
               if (other$scoreRoundingMode != null) {
                  return false;
               }
            } else if (!this$scoreRoundingMode.equals(other$scoreRoundingMode)) {
               return false;
            }

            label78: {
               Object this$vehicleTimeLength = this.getVehicleTimeLength();
               Object other$vehicleTimeLength = other.getVehicleTimeLength();
               if (this$vehicleTimeLength == null) {
                  if (other$vehicleTimeLength == null) {
                     break label78;
                  }
               } else if (this$vehicleTimeLength.equals(other$vehicleTimeLength)) {
                  break label78;
               }

               return false;
            }

            if (this.getStructureTypeSwitch() != other.getStructureTypeSwitch()) {
               return false;
            } else {
               label70: {
                  Object this$showBigDataImgResultNum = this.getShowBigDataImgResultNum();
                  Object other$showBigDataImgResultNum = other.getShowBigDataImgResultNum();
                  if (this$showBigDataImgResultNum == null) {
                     if (other$showBigDataImgResultNum == null) {
                        break label70;
                     }
                  } else if (this$showBigDataImgResultNum.equals(other$showBigDataImgResultNum)) {
                     break label70;
                  }

                  return false;
               }

               Object this$portraitHttpRequestUrlPrefix = this.getPortraitHttpRequestUrlPrefix();
               Object other$portraitHttpRequestUrlPrefix = other.getPortraitHttpRequestUrlPrefix();
               if (this$portraitHttpRequestUrlPrefix == null) {
                  if (other$portraitHttpRequestUrlPrefix != null) {
                     return false;
                  }
               } else if (!this$portraitHttpRequestUrlPrefix.equals(other$portraitHttpRequestUrlPrefix)) {
                  return false;
               }

               Object this$portraitPictureUrlPrefix = this.getPortraitPictureUrlPrefix();
               Object other$portraitPictureUrlPrefix = other.getPortraitPictureUrlPrefix();
               if (this$portraitPictureUrlPrefix == null) {
                  if (other$portraitPictureUrlPrefix != null) {
                     return false;
                  }
               } else if (!this$portraitPictureUrlPrefix.equals(other$portraitPictureUrlPrefix)) {
                  return false;
               }

               return true;
            }
         }
      }
   }

   protected boolean canEqual(Object other) {
      return other instanceof AggregatorProperties;
   }

   public int hashCode() {
      
      int result = 1;
      Object $parallelismGroupSize = this.getParallelismGroupSize();
      result = result * 59 + ($parallelismGroupSize == null ? 43 : $parallelismGroupSize.hashCode());
      Object $scoreAccuracy = this.getScoreAccuracy();
      result = result * 59 + ($scoreAccuracy == null ? 43 : $scoreAccuracy.hashCode());
      Object $scoreRoundingMode = this.getScoreRoundingMode();
      result = result * 59 + ($scoreRoundingMode == null ? 43 : $scoreRoundingMode.hashCode());
      Object $vehicleTimeLength = this.getVehicleTimeLength();
      result = result * 59 + ($vehicleTimeLength == null ? 43 : $vehicleTimeLength.hashCode());
      result = result * 59 + this.getStructureTypeSwitch();
      Object $showBigDataImgResultNum = this.getShowBigDataImgResultNum();
      result = result * 59 + ($showBigDataImgResultNum == null ? 43 : $showBigDataImgResultNum.hashCode());
      Object $portraitHttpRequestUrlPrefix = this.getPortraitHttpRequestUrlPrefix();
      result = result * 59 + ($portraitHttpRequestUrlPrefix == null ? 43 : $portraitHttpRequestUrlPrefix.hashCode());
      Object $portraitPictureUrlPrefix = this.getPortraitPictureUrlPrefix();
      result = result * 59 + ($portraitPictureUrlPrefix == null ? 43 : $portraitPictureUrlPrefix.hashCode());
      return result;
   }

   public String toString() {
      return "AggregatorProperties(parallelismGroupSize=" + this.getParallelismGroupSize() + ", scoreAccuracy=" + this.getScoreAccuracy() + ", scoreRoundingMode=" + this.getScoreRoundingMode() + ", vehicleTimeLength=" + this.getVehicleTimeLength() + ", StructureTypeSwitch=" + this.getStructureTypeSwitch() + ", showBigDataImgResultNum=" + this.getShowBigDataImgResultNum() + ", portraitHttpRequestUrlPrefix=" + this.getPortraitHttpRequestUrlPrefix() + ", portraitPictureUrlPrefix=" + this.getPortraitPictureUrlPrefix() + ")";
   }
}
